package org.framework.callback;

import org.framework.mq.CallbackInterface;
import org.springframework.amqp.core.Message;
import org.springframework.amqp.rabbit.connection.CorrelationData;

/**
 * @ClassName AbstractMqCallback
 * @Description
 * @Author RayLiang
 * @Date 2023/1/6 17:11
 * @Version 1.0
 **/
public abstract class AbstractMqCallback<T> implements CallbackInterface<T> {

    /**
     *
     * @param correlationData
     * @param ack
     * @param cause
     * @param t
     */
    @Override
    public abstract void confirm(CorrelationData correlationData, boolean ack, String cause,T t);

    /**
     *
     * @param message
     * @param replyCode
     * @param replyText
     * @param exchange
     * @param routingKey
     */
    @Override
    public abstract void returnedMessage(Message message, int replyCode, String replyText, String exchange, String routingKey);
}
